﻿using HK.Core.Common.Protocol;
using HK.Core.Common.Protocol.Data;

namespace HK.Core.Settings.Protocol
{
    /// <summary>
    /// 接口 : 下载设定信息
    /// </summary>
    public interface IDownloadSettingsData : IJsonData
    {
        /// <summary>
        /// 下载地址
        /// </summary>
        string Url { get; }
        
        /// <summary>
        /// 备用下载地址
        /// </summary>
        string BakUrl { get; }
        
        /// <summary>
        /// 现在线程数
        /// </summary>
        int ThreaderNum { get; }
        
        /// <summary>
        /// 重试次数
        /// </summary>
        int Retry { get; }
        
        /// <summary>
        /// 断点续载标志位
        /// </summary>
        bool BrokenDownload { get; }
        
        /// <summary>
        /// 后台下载标志位
        /// </summary>
        bool Background { get; }
        
        /// <summary>
        /// 下载缓存
        /// <para>* 单位 : Byte</para>
        /// </summary>
        int Buffer { get; }
        
        /// <summary>
        /// 下载完成标志位
        /// </summary>
        bool Downloaded { get; set; }
    }
}
